
# ifndef __DFX_THREAD_WIN32_H__
# define __DFX_THREAD_WIN32_H__

# include "dfxThread.h"
# include <Windows.h>
# include <process.h>

namespace DFX
{
    UInt32 WINAPI ThreadEntryPoint(void *ptr);

    class Thread_Win32 : public Thread
    {
    private:

        uintptr_t   mHandle;

    public:

        Thread_Win32(PRIORITY pri);
        ~Thread_Win32();        
        
        UInt32 GetHandle() const
        {
            return (UInt32)mHandle;
        }

        void Start(Task *t);
        void Exit(bool wait);
    };
}

# endif